﻿/*
 * Twipler - Twitter Web Client with features.
 *  
 *  Copyright (C) 2010. Ian Quigley
 * 
 *  This program is free software: you can redistribute it and/or modify
 *  it under the terms of the GNU General Public License as published by
 *  the Free Software Foundation, either version 3 of the License.
 *
 *  This program is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *  GNU General Public License for more details. 
 *
 *  You should have received a copy of the GNU General Public License
 *  along with this program.  If not, see <http://www.gnu.org/licenses/>. 
 */

using System;
using System.Web;
using Dimebrain.TweetSharp.Model;
using log4net;
using Twipler.Data.Entity.Twipler;
using Twipler.Twitter;
using System.Collections.Generic;

namespace Twipler.App.Session
{
	public class InnerSessionEmpty : IInnerSession
	{
		public InnerSessionEmpty()
		{
			if (HttpContext.Current == null)
				IP = "-unknown-";
			else
				IP = HttpContext.Current.Request.UserHostAddress;
		}

		public Visitor Visitor
		{
			get { return Visitor.Anonymous; }
			set { }
		}

		public string SessionId { get { return "-empty-"; } }

		public string IP { get; set; }

		public DateTime LastSeen { get { return DateTime.MinValue; } }
		public string LastPage { get { return "-unknown-"; } }
		public Caller ApiCaller { get { return null; } }

		public OAuthToken OAuthToken
		{
			get { return null;  }
			set {}
		}

		public string[] Credentials
		{
			get { return null; }
			set { }
		}

		public void CleanUp()
		{ }

		public void AddToCleanUp(ISessionCleanup item)
		{ }

		public void RemoveFromCleanUp(ISessionCleanup item)
		{ }

		public void ViewingPage(string page)
		{ }

        public List<string> ScreenNames
        {
            get { return new List<string>(); }
			set {}
        }

    }
}
